package cn.stylefeng.guns.modular.business.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.util.Date;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

/**
    * 工程信息表
    */
@ApiModel(value="cn-stylefeng-guns-modular-business-entity-Project")
@Data
@AllArgsConstructor
@NoArgsConstructor
@TableName(value = "app_project")
public class Project {
    @TableId(value = "id", type = IdType.AUTO)
    @ApiModelProperty(value="")
    private Integer id;

    /**
     * 工程名称
     */
    @TableField(value = "project_name")
    @ApiModelProperty(value="工程名称")
    private String projectName;

    /**
     * 桂建通项目ID，后期修改别的表，用对应的整形ID，不用桂建通的这个ID了
     */
    @TableField(value = "project_id")
    @ApiModelProperty(value="桂建通项目ID，后期修改别的表，用对应的整形ID，不用桂建通的这个ID了")
    private String projectId;

    /**
     * 0是未抓取 1是已抓取
     */
    @TableField(value = "status")
    @ApiModelProperty(value="0是未抓取 1是已抓取")
    private Byte status;

    @TableField(value = "create_time")
    @ApiModelProperty(value="")
    private Integer createTime;

    @TableField(value = "last_time")
    @ApiModelProperty(value="")
    private Date lastTime;

    /**
     * 施工许可证号
     */
    @TableField(value = "project_license")
    @ApiModelProperty(value="施工许可证号")
    private String projectLicense;

    /**
     * 所属项目
     */
    @TableField(value = "subject_id")
    @ApiModelProperty(value="所属项目")
    private String subjectId;

    /**
     * 所属项目编码
     */
    @TableField(value = "subject_code")
    @ApiModelProperty(value="所属项目编码")
    private String subjectCode;

    /**
     * 工程分类
     */
    @TableField(value = "project_type")
    @ApiModelProperty(value="工程分类")
    private String projectType;

    /**
     * 地区 ID
     */
    @TableField(value = "area_id")
    @ApiModelProperty(value="地区 ID")
    private String areaId;

    /**
     * 监管市
     */
    @TableField(value = "city")
    @ApiModelProperty(value="监管市")
    private String city;

    /**
     * 监管县/区
     */
    @TableField(value = "county")
    @ApiModelProperty(value="监管县/区")
    private String county;

    /**
     * 工程地址
     */
    @TableField(value = "address")
    @ApiModelProperty(value="工程地址")
    private String address;

    /**
     * 建设单位
     */
    @TableField(value = "const_unit")
    @ApiModelProperty(value="建设单位")
    private String constUnit;

    /**
     * 建设单位名称
     */
    @TableField(value = "const_unit_txt")
    @ApiModelProperty(value="建设单位名称")
    private String constUnitTxt;

    /**
     * 开工时间
     */
    @TableField(value = "start_date")
    @ApiModelProperty(value="开工时间")
    private String startDate;

    /**
     * 结束时间
     */
    @TableField(value = "end_date")
    @ApiModelProperty(value="结束时间")
    private String endDate;

    /**
     * 总建筑面积
     */
    @TableField(value = "total_area")
    @ApiModelProperty(value="总建筑面积")
    private String totalArea;

    /**
     * 总资金额
     */
    @TableField(value = "total_amount")
    @ApiModelProperty(value="总资金额")
    private String totalAmount;

    /**
     * 设计单位
     */
    @TableField(value = "design_unit")
    @ApiModelProperty(value="设计单位")
    private String designUnit;

    /**
     * 监理单位
     */
    @TableField(value = "control_unit")
    @ApiModelProperty(value="监理单位")
    private String controlUnit;

    /**
     * 质监单位
     */
    @TableField(value = "quality_unit")
    @ApiModelProperty(value="质监单位")
    private String qualityUnit;

    /**
     * 安监单位
     */
    @TableField(value = "safety_unit")
    @ApiModelProperty(value="安监单位")
    private String safetyUnit;

    /**
     * 总包单位
     */
    @TableField(value = "contractor")
    @ApiModelProperty(value="总包单位")
    private String contractor;

    /**
     * 总包单位名称
     */
    @TableField(value = "contractor_txt")
    @ApiModelProperty(value="总包单位名称")
    private String contractorTxt;

    /**
     * 分包单位
     */
    @TableField(value = "sub_contractors")
    @ApiModelProperty(value="分包单位")
    private String subContractors;

    /**
     * 工程状态 0 未开工 1 在建  2 已暂停 3已竣工 4 在办竣工手续 5 作废
     */
    @TableField(value = "project_status")
    @ApiModelProperty(value="工程状态 0 未开工 1 在建  2 已暂停 3已竣工 4 在办竣工手续 5 作废")
    private Byte projectStatus;

    /**
     * 经度
     */
    @TableField(value = "lng")
    @ApiModelProperty(value="经度")
    private String lng;

    /**
     * 纬度
     */
    @TableField(value = "lat")
    @ApiModelProperty(value="纬度")
    private String lat;

    /**
     * 1是试点。0不是
     */
    @TableField(value = "is_shidian")
    @ApiModelProperty(value="1是试点。0不是")
    private Byte isShidian;

    /**
     * 试点编号，用于页面跳转
     */
    @TableField(value = "shidian_num")
    @ApiModelProperty(value="试点编号，用于页面跳转")
    private Short shidianNum;

    /**
     * 试点接入时间
     */
    @TableField(value = "shidian_time")
    @ApiModelProperty(value="试点接入时间")
    private Integer shidianTime;

    /**
     * 试点状态 。 1 是接入展示，0是未接入
     */
    @TableField(value = "shidian_status")
    @ApiModelProperty(value="试点状态 。 1 是接入展示，0是未接入")
    private Byte shidianStatus;

    /**
     * 试点排序，从小到大，越小越靠前
     */
    @TableField(value = "shidian_sort")
    @ApiModelProperty(value="试点排序，从小到大，越小越靠前")
    private Integer shidianSort;

    /**
     * 下次更新时间
     */
    @TableField(value = "next_time")
    @ApiModelProperty(value="下次更新时间")
    private Integer nextTime;

    @TableField(value = "manager")
    @ApiModelProperty(value="")
    private String manager;

    @TableField(value = "manager_mobile")
    @ApiModelProperty(value="")
    private String managerMobile;

    /**
     * 用于判断更新lng与lat,更新完后删除
     */
    @TableField(value = "temp_update")
    @ApiModelProperty(value="用于判断更新lng与lat,更新完后删除")
    private Integer tempUpdate;

    /**
     * 更新总包单位辅助，用完删除
     */
    @TableField(value = "temp_updata_project")
    @ApiModelProperty(value="更新总包单位辅助，用完删除")
    private Integer tempUpdataProject;

    public static final String COL_ID = "id";

    public static final String COL_PROJECT_NAME = "project_name";

    public static final String COL_PROJECT_ID = "project_id";

    public static final String COL_STATUS = "status";

    public static final String COL_CREATE_TIME = "create_time";

    public static final String COL_LAST_TIME = "last_time";

    public static final String COL_PROJECT_LICENSE = "project_license";

    public static final String COL_SUBJECT_ID = "subject_id";

    public static final String COL_SUBJECT_CODE = "subject_code";

    public static final String COL_PROJECT_TYPE = "project_type";

    public static final String COL_AREA_ID = "area_id";

    public static final String COL_CITY = "city";

    public static final String COL_COUNTY = "county";

    public static final String COL_ADDRESS = "address";

    public static final String COL_CONST_UNIT = "const_unit";

    public static final String COL_CONST_UNIT_TXT = "const_unit_txt";

    public static final String COL_START_DATE = "start_date";

    public static final String COL_END_DATE = "end_date";

    public static final String COL_TOTAL_AREA = "total_area";

    public static final String COL_TOTAL_AMOUNT = "total_amount";

    public static final String COL_DESIGN_UNIT = "design_unit";

    public static final String COL_CONTROL_UNIT = "control_unit";

    public static final String COL_QUALITY_UNIT = "quality_unit";

    public static final String COL_SAFETY_UNIT = "safety_unit";

    public static final String COL_CONTRACTOR = "contractor";

    public static final String COL_CONTRACTOR_TXT = "contractor_txt";

    public static final String COL_SUB_CONTRACTORS = "sub_contractors";

    public static final String COL_PROJECT_STATUS = "project_status";

    public static final String COL_LNG = "lng";

    public static final String COL_LAT = "lat";

    public static final String COL_IS_SHIDIAN = "is_shidian";

    public static final String COL_SHIDIAN_NUM = "shidian_num";

    public static final String COL_SHIDIAN_TIME = "shidian_time";

    public static final String COL_SHIDIAN_STATUS = "shidian_status";

    public static final String COL_SHIDIAN_SORT = "shidian_sort";

    public static final String COL_NEXT_TIME = "next_time";

    public static final String COL_MANAGER = "manager";

    public static final String COL_MANAGER_MOBILE = "manager_mobile";

    public static final String COL_TEMP_UPDATE = "temp_update";

    public static final String COL_TEMP_UPDATA_PROJECT = "temp_updata_project";
}